1. Field of the Invention
The present invention relates generally to signal processing and, more particularly, to systems and methods employing forward error correcting codes.
2. Discussion of Related Art
Forward error correcting codes are used to increase the reliability of digital transmissions. An (n,k) error correcting code produces n output bits given k input bits at a code rate of R=k/n. It is often desirable to increase the code rate to increase the rate of transmission. The code rate can be increased by removing m of every n bits from the output stream, thus producing a code rate R′=k/(n−m). This process of erasing m of n output bits, known as code puncturing, increases the code rate, but reduces the error correcting capacity of the code.
In general, the puncturing process (erasure pattern) is closely tied to the correction code being used as not all erasure patterns work well with all codes. Thus, the conventional approach to puncturing is to define a small, fixed, periodic puncturing pattern (algorithm) for each desired code rate. For example, there are several known puncturing algorithms available for the WiMax Convolutional Turbo Code (CTC) for forward error correction. An alternative approach is to interleave the n output bits with a pseudorandom interleaver and then transmit only the first n-m bits of the interleaved output. However, this approach is relatively complicated and resource intensive.